Enterprise Database Systems
Blockchain - Working With Ethereum
Working with Ethereum: Lifecycle of a Smart Contract
Working with Ethereum: Metamask & the Ethereum Wallet
Working with Ethereum: Smart Contract Development
Working with Ethereum: Storing Data
Working with Ethereum: The Geth Client
Working with Ethereum: Tools for Smart Contract Development

Working with Ethereum: Lifecycle of a Smart Contract

Course Number:
it_bcwketdj_05_enus
Lesson Objectives

Working with Ethereum: Lifecycle of a Smart Contract

  • Course Overview
  • write a simple Hello World smart contract using Solidity
  • use the solc compiler to compile a smart contract to generate Ethereum bytecode
  • script smart contract compilation and define the types of output required, including bytecode and ABI
  • write simple test cases using Mocha, group them into a test suite, and describe a common set of actions to run before each test case
  • develop a test case to list all accessible Ethereum accounts in a private Ethereum network
  • recall the methods of compiling Solidity code and automate contract testing using Mocha

Overview/Description

Accelerate contract development by using the Truffle framework and Ganache to manage building, testing, and deploying smart contracts for your Blockchain solutions. For this course, you should already have some degree of application development experience in a high-level programming language. Learn how to write a simple Hello World smart contract using Solidity; how to use the solc compiler to produce a smart contract to generate Ethereum bytecode; and how to script smart contract compilation and define the types of output required, including bytecode and ABI (application binary interface). In this course, you will also learn to write simple test cases by using Mocha, group them into a test suite, and describe a common set of actions to run before each test case. By the end of this course, you will become familiar with using the Truffle Suite for smart contract development and lifecycle management. You will know how the steps for building, testing, and deploying a smart contract can be scripted and thus greatly speed up the development of your distributed application.



Target

Prerequisites: none

Working with Ethereum: Metamask & the Ethereum Wallet

Course Number:
it_bcwketdj_03_enus
Lesson Objectives

Working with Ethereum: Metamask & the Ethereum Wallet

  • Course Overview
  • install the Metamask extension for the Chrome browser
  • top up your Ethereum account with some ether on the Rinkeby network by making a social media post
  • install the official Ethereum Wallet application and describe the UI options available
  • use the Metamask client to transfer ether from your account in Metamask to the one in Ethereum Wallet
  • code a simple smart contract and deploy it to the Rinkeby network using the Ethereum Wallet UI
  • call the functions defined in your deployed smart contract using the Ethereum Wallet interface
  • write the code for a constructor in your smart contract and deploy it to Ethereum
  • code, deploy, and interact with a smart contract that includes a constructor which takes in an argument
  • define a function in Solidity to transfer tokens from one Ethereum account to another
  • invoke a transaction with a smart contract by calling a function that changes the state of the contract
  • validate a token transfer operation in a smart contract by checking the token balance of the transaction initiator
  • use the Chrome console and your file system to clean up unneeded contracts and accounts from your Ethereum Wallet
  • recall the features of Metamask and Ethereum Wallet and the types of operations permitted by each of them

Overview/Description

Discover transformative Blockchain technology with the Ethereum network using some of the UI (user interface)-based clients of MetaMask and Ethereum Wallet. For this course, participants are assumed to have a fundamental understanding of Ethereum and the workings of Ethereum clients. This course covers how to install the official Ethereum Wallet application, describe the UI options available, and use the MetaMask client to transfer ether from your account in MetaMask to the one in Ethereum Wallet. Ethereum Wallet not only works as a wallet, but also provides an interface for you to deploy your own smart contracts to Ethereum networks. It includes an interface to read data from contracts, and then write to them by invoking transactions. Learn to code a simple smart contract and deploy it to the Rinkeby network using the Ethereum Wallet UI. Upon finishing this course, you will have the skills required to work with the Ethereum network for transferring Ether to an account using MetaMask. And you will also know how to interact with smart contracts using Ethereum Wallet.



Target

Prerequisites: none

Working with Ethereum: Smart Contract Development

Course Number:
it_bcwketdj_02_enus
Lesson Objectives

Working with Ethereum: Smart Contract Development

  • Course Overview
  • identify the different networks available to test out smart contracts and describe their unique features
  • recognize the role of the Ethereum Virtual Machine for running smart contract code
  • describe the functions of smart contract bytecode, opcodes, and ABI in interacting with a contract
  • identify the characteristics of full, light, and archive nodes in Ethereum
  • recognize the role of an Ethereum client and list the different Ethereum clients
  • describe the purpose of the Metamask client for Ethereum and the techniques it uses to connect to an Ethereum network
  • identify the roles of solc-js and the Remix IDE for developing smart contracts written in the Solidity language
  • recognize the features of the Truffle framework, Ganache, and Drizzle tools that speed up smart contract development
  • recall the functions of full Ethereum nodes and the different tools in the Truffle Suite

Overview/Description

Develop Blockchain applications for Ethereum by using a variety of tools with unique features. In this course, you will explore Ethereum development tools including solc-js and the Remix IDE (integrated developer environment) for developing smart contracts written in the Solidity language. Learn the functions of full Ethereum nodes and the different tools in the Truffle Suite by getting familiar with the features of the Truffle framework, Ganache, and Drizzle tools that speed up smart contract development. Discover the purpose of the MetaMask client for Ethereum and the techniques it uses to connect to an Ethereum network and the functions of smart contract bytecode, opcodes, and ABI (application binary interface) in interacting with a contract. Also, get acquainted with the role of the Ethereum virtual machine for running smart contract code. By the end of this course, you will have a conceptual understanding of smart contract development and the tools available to help you build robust, efficient contracts that are easy to maintain.



Target

Prerequisites: none

Working with Ethereum: Storing Data

Course Number:
it_bcwketdj_01_enus
Lesson Objectives

Working with Ethereum: Storing Data

  • Course Overview
  • recall the fundamentals of blockchain technology such as the storage of records across a sequence of blocks
  • define Ethereum-specific terms such as mining, ether, and smart contracts
  • identify the two types of Ethereum accounts - externally owned and contract - and the data that is needed for each of them
  • describe the trie data structure that is used to represent associative arrays and distinguish it from its space-optimized version, the Patricia trie
  • recognize the functions of branch and extension nodes in a Merkle Patricia trie
  • identify the purpose of leaf nodes in a Merkle Patricia trie
  • recall the types of nodes in a Merkle Patricia trie data structure and identify the characteristics of the Ethereum network

Overview/Description

Review what you have learned about blockchain technology in this 7-video course that illuminates the two types of Ethereum accounts—externally-owned and contract—and the data needed for each of them. Study the glossary of Ethereum terms to ensure your full understanding of such key terms as mining; ether; and smart contracts—or protocols used for digitally specifying, verifying, and enforcing a contract; and Ethereum Virtual Machines. Next, you will begin to compare and contrast the Trie data structure that represents associative arrays and its space-optimized version, the Patricia trie (or digital tree). Learn how to recognize the functions of branch and extension modes in a Merkle Patricia trie—essentially a modified version of a Patricia trie—before identifying the purpose of its leaf nodes. As a final exercise, you will be asked to list the important characteristics of the Ethereum network, and identify specific fields with an Ethereum account state.



Target

Prerequisites: none

Working with Ethereum: The Geth Client

Course Number:
it_bcwketdj_04_enus
Lesson Objectives

Working with Ethereum: The Geth Client

  • Course Overview
  • create a private blockchain network using the Geth CLI and connect to it as a node
  • use the Geth console to access the various management APIs such as personal, admin, and miner
  • work with the miner API to begin mining blocks and earning ether as part of mining rewards
  • invoke an ether transfer transaction and add it to the blockchain by mining it
  • connect a new node to the private Ethereum network and add it as a peer of the existing node
  • recall the Geth commands to invoke transactions and the various APIs accessible from the console

Overview/Description

Create a private Ethereum network using Geth for your Blockchain solutions. In this course, you will learn how the Geth client can be used to create a private blockchain network using the Geth CLI and connect to it as a node. In this course, you will utilize the Geth console to access the various management application programming interfaces (APIs), such as personal, admin, and miner. Then work with the miner API to begin mining blocks and earning ether as part of mining rewards. Produce a private blockchain network using the Geth CLI and connect to it as a node. Recall the Geth commands to invoke transactions and the various APIs accessible from the console. Then invoke an Ether transfer transaction and add it to the blockchain by mining it. Once you complete this course, you will be familiar with the Geth client and will know different ways in which you can interact with an Ethereum network and setup and maintain not just an Ethereum node, but also an entire private Ethereum network.



Target

Prerequisites: none

Working with Ethereum: Tools for Smart Contract Development

Course Number:
it_bcwketdj_06_enus
Lesson Objectives

Working with Ethereum: Tools for Smart Contract Development

  • Course Overview
  • use JavaScript and Mocha to define a process for deploying a smart contract to a private Ethereum network
  • work with Mocha to call a function on a deployed contract and test its return value
  • write a script to deploy a smart contract to a private Ethereum network
  • use Ganache to provision a private Ethereum network and deploy your smart contract to it
  • connect to an already deployed contract using the Ethereum JavaScript API and invoke its methods
  • work with Geth to connect as a node to the Rinkeby test network and deploy your smart contract there
  • use the cloud-based Remix IDE along with Metamask to develop and deploy a smart contract to the Rinkeby network
  • invoke a transaction on your deployed contract using the Remix interface and set transaction parameters in Metamask
  • interact with a contract deployed on the Rinkeby test network and track the mining of your transactions
  • use the Ethereum Wallet app to interact with a deployed smart contract by passing to it the contract address and ABI
  • recall the different ways to interact with Ethereum networks and smart contracts using Geth, JavaScript, and Ethereum Wallet

Overview/Description

Employ the variety of tools available to develop smart contracts for your Blockchain solutions. In this course, participants discover how to use deployment scripts in Javascript, develop with the Remix integrated developer environment (IDE), and interact with the Ethereum Wallet. This course assumes some degree of application development experience in a high-level programing language. You will learn how to use Javascript and Mocha to define a process for deploying a smart contract to a private Ethereum network; how to use Ganache to provision a private Ethereum network; and how to deploy your smart contract to it and work with Geth to connect as a node to the Rinkeby test network and deploy your smart contract, among other skills covered. Upon finishing this course, you will be familiar with the different tools available to build, test, and deploy smart contracts. This will equip you with the skills required to build smart contracts which are robust, efficient, and easy to maintain, and to define streamlined processes for contract deployment and testing.



Target

Prerequisites: none

Close Chat Live